The present invention relates to financial and accounting software systems. In particular, the present invention relates to reporting tools used in conjunction with accounting software.
In early versions of accounting software, account numbers were used to associate financial data with particular accounts, such as a particular customer. To allow for more detailed accounting information, the concept of the account was extended by segmenting the account number so that different portions of the account number could be associated with specific entities within the company. For example, financial transactions performed by a particular department within the company or a particular sales person within the company could be assigned unique values within a segment of the account code. Thus, if the natural account number is 011, the department identifier is 52, and the sales person identifier is 48, an extended account code can be constructed as 0115248 to identify those financial transactions that are associated with the particular sales person in the particular department for the account. Accounting systems that use such account codes are known as segment-based accounting systems, because the account code can be divided into various segments to identify particular entities or attributes associated with the financial transaction.
Such segment based accounting systems have strict rules regarding the values that can be placed in each segment. In particular, the rules require that once the length of the segment has been defined, all of the entries placed in that segment must be of that length. Such restrictions make it difficult for some users to work with the accounting system.
As a result, dimension-based accounting systems were developed that gave the user more freedom in defining the attributes associated with an account. Under dimension-based accounting, financial transactions are identified by the natural account number and one or more user-defined dimensions. Each dimension is loosely defined such that there are no restrictions on the values that may be set for a dimension after the dimension is created. For example, a “Department” dimension can receive values of different lengths such as “52” and “claims” because there are no restrictions on the lengths of the entries for the dimension.
Reporting tools have been developed for segment-based accounting systems that rely on rigid definitions for the segments within the account codes. Because of the free-form nature of dimension-based accounting systems, the segment-based reporting tools have not been able to generate reports from dimension-based accounting data. Because of this, specialized reporting tools have been developed for dimension-based accounting. This requires users to use different reporting tools for different accounting systems, thereby increasing the learning burden on the user.